home *** CD-ROM | disk | FTP | other *** search
/ Aminet 30 / Aminet 30 (1999)(Schatztruhe)[!][Apr 1999].iso / Aminet / biz / dopus / ViewToolRexx.lha / ViewTool.dopus5 next >
Text File  |  1999-02-21  |  4KB  |  61 lines

  1. /* Anzeige von jpg-Dateien mit ViewTool aus DOpus5 heraus
  2.    von Peter Hauke
  3.    e.Mail:          twilight@rcs.urz.tu-dresden.de
  4.    WWW:             http://rcswww.urz.tu-dresden.de/~twilight
  5.    andere Tools:    MaschCalc (Aminet:misc/sci/maschcal.lha)
  6.  
  7.    $VER: ViewTool.dopus5 Version 1.0 (21.02.1999)
  8.  
  9.    ViewTool aus dem Aminet ist ein jpg-Anzeiger mit PPC-Unterstützung
  10.    Dafür läßt es sich jedoch nicht von der Shell aus bedienen, sodaß
  11.    ein einfaches Einbinden in DirectoryOpus nicht möglich ist, wie man
  12.    es z.B. von ViewTek oder FastJPEG gewöhnt ist.
  13.  
  14.    Da das mitgelieferte ARexx-Script bei ViewTool nicht viel taugt und
  15.    zudem fehlerbehaftet ist (die auch in der Anleitung auftauchen)
  16.    gibts hier ein neues - es ist mein erster Versuch in ARexx, also
  17.    haut nicht alle auf mir rum, wenn was nicht stimmt!
  18.  
  19.  */
  20.  
  21. OPTIONS RESULTS
  22.                                                     
  23. ADDRESS 'DOPUS.1'                                   /* Opus ist Objekt der Begierde */
  24.  
  25. lister query source stem source_handle              /* Opus ermittelt aktuelle Lister */
  26. lister query source_handle.0 Path                   /* Pfad des aktuellen Listers ermittelt ...*/
  27. pfad=RESULT                                         /* ... und in Variable "pfad" speichern */
  28.  
  29. lister query source_handle.0 selfiles stem files    /* Angewählte Dateinamen ermitteln und in Feld "files" abspeichern */
  30.  
  31. do a=0 to files.count-1                             /* Schleifenbeginn: von 0 bis files.count-1
  32.                                                        in files.count wird von opus die anzahl der angewählten files gespeichert,
  33.                                                        die zählung beginnt jedoch bei 0 (daher auch files.count-1) */
  34.         lister select source_handle.0 files.a OFF   /* alle Files im Lister deselektieren */
  35.     end
  36.         lister refresh source_handle.0 full         /* Lister refreshen, damit Deselktion wirklich statt findet */
  37.  
  38.                                                     /* Die nächsten 5 Zeilen erzeugen aus dem String "pfad" und den Einträgen
  39.                                                        im Feld files (files.0 bis files.i) einen langen String "gesamtpfad"
  40.                                                        Hintergrund: wenn man z.B. 20 Files in einer Schleife NACHEINANDER zu
  41.                                                        ViewTool schickt, kann man das Anzeigen nicht durch drücken von ESC ab-
  42.                                                        brechen, da für ViewTool jeder Aufruf seperat erfolgt. Übergibt man nun
  43.                                                        alle Dateinamen auf einmal, kann man das Anzeigen abbrechen.
  44.                                                        Die Übergabe sieht folgendermaßen aus:
  45.                                                        LOADIMAGE File=pfad:(files.0|files.1|files.2...|files.i) */
  46.  
  47. gesamtpfad=pfad||'('||files.0                       /* aus pfad und der ersten angewählten Datei (files.0) wird ein String gebildet */
  48. do i=1 to files.count-1                             /* Schleifenbeginn: von 1 (weil files.0 schon abgearbeitet) bis files.count-1 */
  49.         gesamtpfad=gesamtpfad||'|'||files.i         /* zum Dateistring "gesamtpfad" wird immer ein neues Element hinzugefügt */
  50.     end                                             /* Schleifenende */
  51.         gesamtpfad=gesamtpfad||')'                  /* zum Abschluß noch ein ) */
  52.  
  53.  
  54. /* Übergabe an ViewTool */
  55.  
  56.     ADDRESS 'ViewToolRexx'                          /* ViewTool-Rexxport aufrufen */
  57.         LOADIMAGE 'file='gesamtpfad                 /* ViewTool soll Datei laden */
  58.  
  59. EXIT(0)                                             /* Programmende */
  60.  
  61.